package test05.optional.demo01;

import java.util.Optional;

/**
 * Optional是一个特殊的包装类 - 可以包装任意类型的数据
 * @author CSY
 * @date 2025 - 04 - 07
 */
public class MainTest03 {
    public static void main(String[] args) {
        //第一：实例化 Optional 对象 - 注意：Optional只能使用静态方法实例化，不能new
        // 正确，创建一个值为 Hello 的 Optional 对象
        Optional<String> nonEmptyOptional = Optional.ofNullable("Hello");

// 正确，ofNullable 方法允许为 null
        Optional<String> emptyOptional = Optional.ofNullable(null);
        //第二：使用Optional相关API方法
        //判断Optional对象是否为空
        boolean bl = nonEmptyOptional.isPresent();
        System.out.println(emptyOptional.isPresent());
        if (bl){
            //get()：获取Optional对象封装的数据
            String msg = nonEmptyOptional.get();
            System.out.println(msg);
        }
    }
}
